Limits of Indirect Branch Prediction

نویسنده

  • Karel Driesen
چکیده

Indirect branch prediction is likely to become more important in the future because indirect branches tend to be more frequent in object-oriented programs. With indirect branch prediction misprediction rates of around 25% on current processors, such branches can incur a significant fraction of branch misses even though indirect branches are less frequent than the more predictable conditional branches. We investigate the predictability of indirect branches to determine whether the inferior accuracy of the current indirect branch prediction mechanism (branch target buffers) results from an intrinsic unpredictability of indirect branches or is caused by suboptimal branch prediction hardware. Using programs from the SPECint95 suite as well as a suite of C++ applications, we show that prediction accuracy can exceed 95% on average for these benchmarks, assuming an unlimited hardware budget. This result suggests that better indirect branch prediction hardware can significantly outperform current branch target buffers.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Compiler Support for Value-Based Indirect Branch Prediction

Indirect branch targets are hard to predict as there may be multiple targets corresponding to a single indirect branch instruction. Value Based BTB Indexing (VBBI), a recently proposed indirect branch prediction technique, utilizes the compiler to identify a ‘hint instruction’, whose output value strongly correlates with the target address of an indirect branch. At run time, multiple targets ar...

متن کامل

Advanced Techniques for Improving Indirect Branch Prediction Accuracy

Deep pipelines and fast clock rates are necessitating the development of high accuracy branch predictors. From microarchitectural viewpoint, in the last decade the importance of indirect branch prediction increased even though, in the computing programs the indirect jumps remain less frequent than the more predictable conditional branches. One reason refers to predicative execution that implies...

متن کامل

Analyzing Effects of Trace Cache Configurations on the Prediction of Indirect Branches

This paper discusses the effects of using a trace cache on the indirect branch prediction in ILP processors. The main contribution of the paper is an exploration of the fact that the trace cache captures context information about the recent control flow of the program, which can improve the accuracy of predictors that do not themselves explicitly use such information. We analyze and experiment ...

متن کامل

Improving Indirect Branch Prediction With Source- and Arity-based Classification and Cascaded Prediction

Indirect branch prediction is likely to become more critical to program performance because indirect branches occur more frequently in object-oriented programs. We study indirect branch behavior in both procedural and object-oriented programs in order to build more accurate predictor architectures. First we use a statically classifying hybrid predictor with a shared history table and separate h...

متن کامل

Predicting Indirect Branches via Data Compression

Branch prediction is a key mechanism used to achieve high performance on multiple issue, deeply pipelined processors. By predicting the branch outcome at the instruction fetch stage of the pipeline, superscalar processors are better able to exploit Instruction Level Parallelism (ILP) by providing a larger window of instructions. However, when a branch is mispredicted, instructions from the misp...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1997